Computer Implemented Method for Modelizing A Nuclear Reactor Core and a Corresponding Computer Program Product

ABSTRACT

A computer implemented method for modelizing a nuclear reactor core, including the steps of: partitioning the core in cubes to constitute nodes of a grid for computer implemented calculation, calculating neutron flux by using an iterative solving procedure of at least one eigensystem, the components of an iterant of the eigensystem corresponding either to a neutron flux, to a neutron outcurrent or to a neutron incurrent, for a respective cube to be calculated. 
     The neutrons are sorted in a plurality of neutron energy groups, and the eigensystem iterative solving procedure includes a substep of conditioning the eigensystem into a restricted eigensystem corresponding to the eigensystem for a selection of some neutron energy groups.

This application claims priority to European application EP09305766.9, filed on Aug. 18, 2009, the entire disclosure of which is incorporated by reference herein.

The invention relates to a method for modelizing the core of a nuclear reactor, especially for calculating neutron flux within the core.

BACKGROUND

The results of such a modelizing method can be used to prepare safety analysis reports before building and starting a reactor.

These results can also be useful for existing nuclear reactors and especially for managing the nuclear fuel loaded therein. In particular, these results can be used to assess how the core design should evolve in time and decide of the positions of the fuel assemblies in the core, especially the positions of the fresh assemblies to be introduced in the core.

Such modelizing methods are implemented by computers. To this end, the core is partitioned in cubes, each cube constituting a node of a grid for implementing a digital computation.

Usually the steady-state diffusion equation to be solved during such a digital computation amounts to:

$\begin{matrix} {{\underset{\underset{removal}{}}{\Sigma_{Rg}^{m}\varphi_{g}^{m}} = {{{\lambda\chi}_{g}{\sum\limits_{g^{\prime} = 1}^{G}\underset{\underset{production}{}}{\nu \; \Sigma_{{fg}^{\prime}}^{m}\varphi_{g^{\prime}}^{m}}}} + {\sum\limits_{g^{\prime} \neq g}^{G}\underset{\underset{inscatter}{}}{\Sigma_{{gg}^{\prime}}^{m}\varphi_{g^{\prime}}^{m}}} + {\sum\limits_{{u = x},y,z}{\frac{1}{a_{u}^{m}}{\theta_{gu}^{m}\left( \underset{\underset{incurrent}{}}{j_{gul}^{+ m} + j_{gur}^{- m}} \right)}}}}},} & (1) \\ {\mspace{79mu} {{with}\left\{ \begin{matrix} {{\Sigma_{Rg}^{m} = {\Sigma_{ag}^{m} + {\sum\limits_{g^{\prime} \neq g}^{G}\Sigma_{g^{\prime}g}^{m}} + {\sum\limits_{{u = x},y,z}\frac{2\; c_{1{gu}}^{m}}{a_{u}^{m}}}}}} \\ {{{\theta_{gu}^{m} = {1 - c_{2\; {gu}}^{m} - c_{3\; {gu}}^{m}}},}} \end{matrix} \right.}} & (2) \end{matrix}$

where λ is a first neutron eigenvalue, m is a cube index, also called nodal index, G is the number of neutron energy groups and g, g′ are neutron energy group indexes, u is a Cartesian axis index of the cube, Σ_(ag) ^(m) represents macroscopic absorption cross-section for the cube m and the energy group g, Σ_(fg′) ^(m) represents macroscopic fission cross-section for the cube m and the energy group g′, Σ_(gg′) ^(m) represents macroscopic slowing down cross-section for the cube m and the energy groups g, Φ_(g) ^(m) represent neutron fluxes, such that the Σ_(Rg) ^(m), . . . Φ_(g) ^(m) represent the reaction rates for the corresponding reactions (absorption, fission), ν is the number of neutrons produced per fission, χ_(g) is the fraction of neutrons emerging from fission with neutron energy g, a_(u) ^(m) is the width of cube m along Cartesian axis u, and

with the relationship between the neutron outcurrents j_(gul) ^(−m) and j_(gur) ^(+m), neutron fluxes Φ_(g) ^(m) and neutron incurrents j_(gul) ^(+m) and j_(gur) ^(−m) defined by:

$\begin{matrix} \left\{ \begin{matrix} {j_{gul}^{- m} = {{c_{1\; {gu}}^{m}\varphi_{g}^{m}} + {c_{2\; {gu}}^{m}j_{gul}^{+ m}} + {c_{3\; {gu}}^{m}j_{gur}^{- m}}}} \\ {j_{gur}^{+ m} = {{c_{1\; {gu}}^{m}\varphi_{g}^{m}} + {c_{3\; {gu}}^{m}j_{gul}^{+ m}} + {c_{2\; {gu}}^{m}j_{gur}^{- m}}}} \end{matrix} \right. & (3) \end{matrix}$

The coefficients c_(igu) ^(m), with i=1, 2, 3, are characteristic of the cube m and depend on nodal dimensions and macroscopic cross-sections Σ^(m).

FIG. 1 is a schematic representation in two dimensions of a cube m showing the neutron incurrents j_(gul) ^(+m) and j_(gur) ^(−m) for u=x, y and z; the neutron outcurrents j_(gul) ^(−m) and j_(gur) ^(+m) for u=x, y and z; and the neutron fluxes Σ_(g) ^(m). Indexes 1, respectively r, refers to each left interface surface, respectively each right interface surface, of the cube m for the respective Cartesian axis x, y. Indexes +, respectively −, represents the orientation from left to right, respectively from right to left, for the respective Cartesian axis x, y.

The steady-state diffusion equation (1) is also named NEM equation, for Nodal Expansion Method equation.

Both US Patent Publication 2006/01847286 and EP 2091049 teach a method for modelizing a nuclear reactor core via a computer.

In the state of the art methods, most of the computational efforts are concentrated in the part dedicated to the iterative solving of a large eigensystem corresponding to the steady-state diffusion equation (1).

In order to lower these computational efforts and therefore accelerate the solving of the eigensystem, Coarse Mesh Rebalancing (CMR) procedures have been used. In these procedures, neutron fluxes and currents for a given iteration are multiplied with a corrective factor before pursuing subsequent computationally expensive iterations. The multiplicative correction serves to suppress the presence of a non fundamental wavelength part of eigenspectrum with the first neutron eigenvalue λ close to an exact value λ_(exact).

However, the acceleration effect realized in this way depends on the numerical proximity of the highest coarse mesh level in a multi-level hierarchy to the full-core diffusion level. Such CMR procedures may therefore lead to very slow convergence or even convergence stagnation, thus increasing the computational effort.

SUMMARY OF THE INVENTION

An object of the present invention is to solve the above-mentioned problems by providing a nuclear reactor modelizing method which offers a better convergence accuracy, a better computational robustness and a better computational efficiency so that relevant neutron flux calculations can be obtained within a short computational time period and with a very good convergence accuracy.

The present invention provides a computer implemented method for modelizing a nuclear reactor core, comprising the steps of: partitioning the core in cubes (10) to constitute nodes of a grid (12) for computer implemented calculation, calculating neutron flux by using an iterative solving procedure of at least one eigensystem, the components of an iterant of the eigensystem corresponding either to a neutron flux, to a neutron outcurrent or to a neutron incurrent, for a respective cube (10) to be calculated, wherein the neutrons are sorted in a plurality of neutron energy groups, and wherein the eigensystem iterative solving procedure comprises a substep of conditioning the eigensystem into a restricted eigensystem corresponding to the eigensystem for a selection of some neutron energy groups.

The present invention also provides a computer program product residing on a computer readable medium and comprising computer program means for running on a computer implemented method.

BRIEF DESCRIPTION OF THE DRAWINGS

The invention will be better understood upon reading of the following description, which is given solely by way of example and with reference to the appended drawings, in which:

FIG. 1 is a classic representation of the relationship between macroscopic cross-sections, neutron incurrents, neutron fluxes and neutron outcurrents, in a modelized nuclear core reactor,

FIG. 2 is a schematic view illustrating the partitioning of a nuclear core, and the association of driving factors with interface surfaces of a cube according to an aspect of the present invention,

FIG. 3 is a schematic representation of the decomposition of isotropic and anisotropic parts of neutron outcurrents leaving the cube of FIG. 2,

FIG. 4 is a schematic representation of a multi-level V-cycle from the iterative solving procedure according to another aspect of the present invention,

FIG. 5 is a detailed view of box V of FIG. 4,

FIG. 6 is a schematic view illustrating the partitioning of a nuclear core according to another aspect of the invention, and

FIG. 7 is a set of convergence curves of eigensystem iterative solving procedures for the state of the art method and different aspects of the method according to the present invention.

DETAILED DESCRIPTION

In the following description, the case of a pressurized water reactor (PWR) will be considered, but it should be kept in mind that the present invention applies to other types of nuclear reactors.

In a first step of the computer implemented modelizing method according to the invention, the core of the reactor is partitioned in cubes 10 (shown on FIG. 2) as in the state of art methods. Each cube 10 corresponds to a node of a grid or network 12 on which numerical computation will be implemented through the computer.

In order to ease the representation, the grid 12 is shown on FIG. 2 as being two-dimensional, but it should be kept in mind that the grid is actually three-dimensional in order to represent the whole core.

The neighbours of the cube 10 with the cube index m (in the center of FIG. 2) are the cubes 10 with the respective cube index m′₁(m), m′₂(m), m′₃(m) and m′₄(m). In the following of the description, the cubes 10 will be directly designated by their respective cube index.

In a second step of the computer implemented modelizing method according to the invention, the neutron fluxes Φ_(g) ^(m) within the core will be calculated by the solving of an eigensystem corresponding to the steady-state diffusion equation (1). To this end, an iterative solving procedure is used.

A removal operator {circumflex over (R)}, an inscatter operator Ŝ, a production operator {circumflex over (F)}, and an incurrent operator Ĝ are defined, from Equation (1), by:

$\begin{matrix} \left\{ \begin{matrix} {{\left\lbrack {\hat{R}\varphi} \right\rbrack_{g}^{m} = {\left( {\Sigma_{ag}^{m} + {\sum\limits_{g^{\prime} \neq g}^{G}\Sigma_{g^{\prime}g}^{m}}} \right)\varphi_{g}^{m}}}} \\ {{\left\lbrack {\hat{S}\varphi} \right\rbrack_{g}^{m} = {\sum\limits_{g^{\prime} \neq g}^{G}{\Sigma_{{gg}^{\prime}}^{m}\varphi_{g^{\prime}}^{m}}}}} \\ {{\left\lbrack {\hat{F}\varphi} \right\rbrack_{g}^{m} = {\chi_{g}{\sum\limits_{g^{\prime} = 1}^{G}{{\nu\Sigma}_{{fg}^{\prime}}^{m}\varphi_{g^{\prime}}^{m}}}}}} \\ {{\left\lbrack {\hat{G}J} \right\rbrack_{gu}^{m} = {\sum\limits_{{u = x},y,z}{\frac{1}{a_{u}^{m}}{\theta_{gu}^{m}\left( {j_{gul}^{+ m} + j_{gur}^{- m}} \right)}}}}} \end{matrix} \right. & (4) \end{matrix}$

An isotropic outcurrent generation operator {circumflex over (Π)} and a mono-directional current throughflow operator {circumflex over (Ω)} are defined by:

$\begin{matrix} \left\{ \begin{matrix} {\left\lbrack {\hat{\Pi}\varphi} \right\rbrack_{gu}^{m}\; = {c_{1\; {gu}}^{m}\varphi_{g}^{m}}} \\ {\left\lbrack {\hat{\Omega}J} \right\rbrack_{gul}^{- m} = {{c_{2\; {gu}}^{m}j_{gul}^{+ m}} + {c_{3\; {gu}}^{m}j_{gur}^{- m}}}} \\ {\left\lbrack {\hat{\Omega}J} \right\rbrack_{gur}^{+ m} = {{c_{3\; {gu}}^{m}j_{gul}^{+ m}} + {c_{2\; {gu}}^{m}j_{gur}^{- m}}}} \end{matrix} \right. & (5) \end{matrix}$

A coupling operator Ŷ couples the outcurrents to the incurrents for neighbouring cubes 10, and is defined by:

$\begin{matrix} \left\{ \begin{matrix} {j_{gul}^{+ {(m)}} = {\left\lbrack {\hat{Y}J} \right\rbrack_{gul}^{+ {(m)}} = j_{gur}^{+ {({m - 1})}}}} \\ {j_{gur}^{- {(m)}} = {\left\lbrack {\hat{Y}J} \right\rbrack_{gur}^{- {(m)}} = j_{gul}^{- {({m + 1})}}}} \\ {j_{gul}^{- {(m)}} = {\left\lbrack {\hat{Y}J} \right\rbrack_{gul}^{+ {(m)}} = j_{gur}^{- {({m - 1})}}}} \\ {{j_{gur}^{+ {(m)}} = {\left\lbrack {\hat{Y}J} \right\rbrack_{gur}^{- {(m)}} = j_{gul}^{+ {({m + 1})}}}},} \end{matrix} \right. & (6) \end{matrix}$

This coupling operator Ŷ uses the fact that, for example, for a cube m, the u-directional left-oriented outcurrent equals the u-directional left-oriented incurrent for the left neighbour in direction of the Cartesian axis u, and that similar equalities are verified for the other directions and orientations. For example, the neutron outcurrents coming from respective neighbours m′₁(m), m′₂(m), m′₃m), m′₄(m) into the cube m are the neutron incurrents for the cube m, as the neighbours m′₁(m), m′₂(m), m′₃m), m′₄(m) shown in FIG. 2 are respectively the neighbours (m+1) for the Cartesian axis y, (m−1) for the Cartesian axis x, (m+1) for the Cartesian axis x and (m−1) for the Cartesian axis y of Equation (6).

Using the above operators, the equations (1) and (2) can be written as:

$\begin{matrix} \left\{ \begin{matrix} {{\hat{R}\varphi} = {{\left( {{\lambda \; \hat{F}} + \hat{S}} \right)\varphi} + {\hat{G}j^{({in})}}}} \\ {j^{({out})} = {{\hat{\Pi}\varphi} + {\hat{\Omega}j^{({i\; n})}}}} \\ {{j^{({i\; n})} = {\hat{Y}j^{({out})}}},} \end{matrix} \right. & (7) \end{matrix}$

or as:

$\begin{matrix} {{\begin{pmatrix} {\hat{R} - \hat{S} - {\lambda \; \hat{F}}} & \hat{0} & \hat{G} \\ {- \hat{\Pi}} & \hat{1} & {- \hat{\Omega}} \\ \hat{0} & {- \hat{Y}} & \hat{1} \end{pmatrix}\begin{pmatrix} \varphi \\ j^{({out})} \\ j^{({i\; n})} \end{pmatrix}} = \begin{pmatrix} 0 \\ 0 \\ 0 \end{pmatrix}} & (8) \end{matrix}$

which is the eigensystem to be solved.

In Equation (8), Φ is a neutron flux column vector, wherein each element is a neutron flux Φ_(g) ^(m) for a respective cube m and for a respective energy group g (FIG. 1). Thus, the dimensions of the neutron flux column vector Φ are equal to (G×M, 1), where G is the number of energy groups and M is the number of cubes 10. j^((out)) is a neutron outcurrent column vector, wherein each element is a respective neutron outcurrent j_(gul) ^(−m), j_(gur) ^(+m), for the respective cube m, energy group g and Cartesian axis u, with u equal to x, y or z. j^((in)) is a neutron incurrent column vector, wherein each element is a respective neutron incurrent j_(gul) ^(+m), j_(gur) ^(−m), for the respective cube m, energy group g and Cartesian axis u. Thus, the dimensions of the neutron outcurrent vector column j^((out)) and the neutron incurrent vector column j^((in)) are equal to (6×G×M, 1). In the following of the description, the neutron outcurrent vector column j^((out)) is also noted j_(out).

Thus, the components of an iterant (Φ, j^((out)), j^((in))) of the eigensystem defined by Equation (8) correspond to the neutron fluxes Φ_(g) ^(m), the neutron outcurrents j_(gul) ^(−m), j_(gur) ^(+m), and the neutron incurrents j_(gul) ^(+m), j_(gur) ^(−m), to be calculated for each cube m and for each energy group g, and which are the respective elements of the neutron flux column vector Φ the neutron outcurrent column vector j^((out)) and the neutron incurrent column vector j^((in)).

The iterative solving procedure comprises a sub step of conditioning the eigensystem into a spare eigensystem wherein the components of an iterant (j^((out)), j^((in))) of the spare eigensystem only correspond either to the neutron incurrents j_(gul) ^(+m), j_(gur) ^(−m) coming into the respective cube m or to the neutron outcurrents j_(gul) ^(−m), j_(gur) ^(+m) coming from the respective cube m, which are the respective elements of the neutron outcurrent column vector j^((out)) and the neutron incurrent column vector j^((in)).

The conditioning of the eigensystem into a spare eigensystem starts from modifying the first part of Equation (8) written as:

ΦΦ

({circumflex over (R)}−Ŝ−λ{circumflex over (F)})φ−Ĝj ^((in))=0,  (9)

Defining the symbolic operator {circumflex over (P)}_(λ)=({circumflex over (R)}−Ŝ−λ{circumflex over (F)})⁻¹, the neutron flux column vector Φ is expressed in function of the neutron incurrent column vector j^((in)) as:

φ={circumflex over (P)}_(λ)Ĝj^((in))  (10)

By substituting this expression in the outcurrent equation part of Equation (7), i.e. in the second part of Equation (8), a currents-only relationship is obtained:

j ^((out)) =[{circumflex over (Π)}{circumflex over (P)} _(λ) Ĝ+{circumflex over (Ω)}] j ^((in))  (11)

After defining the following operator notations:

{circumflex over (Θ)}_(λ)={circumflex over (Π)}{circumflex over (P)}_(λ)  (12)

and

{circumflex over (B)} _(λ)={circumflex over (Θ)}_(λ) Ĝ+{circumflex over (Ω)},  (13)

the currents-only relationship is written as:

j^((out))={circumflex over (B)}_(λ)j^((in))  (14)

which is a spare eigensystem.

Using the relationship j^((in))=Ŷj^((out)) between the neutron outcurrent column vector j^((out)) the neutron incurrent column vector j^((in)), where Ŷ is the coupling operator, a spare eigensystem is obtained wherein the components of an iterant (j^((out))) of the spare eigensystem only correspond to the neutron outcurrents j_(gul) ^(−m), j_(gur) ^(+m) coming from the respective cube m, which are the elements of the neutron outcurrent column vector j^((out)). This spare eigensystem corresponds to:

[{circumflex over (1)}−{circumflex over (B)} _(λ) Ŷ]j ^((out))=0  (15)

Since the operator {circumflex over (B)}_(λ)Ŷ will initially not be exactly equal to 1, and will become equal to 1 only as j^((out)) converges to the exact solution j^((out)) _(exact) and if simultaneously the first neutron eigenvalue μ converges to an exact value λ_(exact), so that Equation (15) becomes:

[{circumflex over (1)}−μ{circumflex over (B)} _(λ) Ŷ]j ^((out))=0,  (16)

with a second neutron eigenvalue μ converging towards 1, if the first neutron eigenvalue λ converges to the exact value λ_(exact).

For numerical optimization, Equation (16) may be modified through a premultiplication with the operator Π⁻¹ and the following equation is obtained:

{circumflex over (Π)}⁻¹ j ^((out)) =μ[{circumflex over (P)} _(λ) Ĝ+{circumflex over (Π)} ⁻¹ {circumflex over (Ω)}]Ŷj ^((out))  (17)

The term {circumflex over (P)}_(λ)ĜŶj^((out)) is an isotropic term, which does not depend on the Cartesian direction u.

The expressions of the respective terms from Equation (17) for the cube index m, Cartesian axes u, u′ and the respective orientations s, s′ along the Cartesian axes u, u′ are given by:

$\begin{matrix} \left\{ \begin{matrix} {A_{mGus} = {\sum\limits_{g \in G}\left\lbrack {{\hat{\Pi}}^{- 1}j^{({out})}} \right\rbrack_{mgus}}} \\ {Q_{m\; G}^{G^{\prime}u^{\prime}s^{\prime}} = {\sum\limits_{g \in G}{\sum\limits_{g^{\prime} \in G^{\prime}}\left\lbrack {{\hat{P}}_{\lambda}\hat{G}\hat{Y}j^{({out})}} \right\rbrack_{m\; g}^{g^{\prime}u^{\prime}s^{\prime}}}}} \\ {C_{mGus}^{s^{\prime}} = {\sum\limits_{g \in G}\left\lbrack {{\hat{\Pi}}^{- 1}\hat{\Omega}\hat{Y}j^{({out})}} \right\rbrack_{mgus}^{s^{\prime}}}} \end{matrix} \right. & {(18)\mspace{14mu} (19)\mspace{14mu} (20)} \end{matrix}$

G, G′ are sets of energy groups. Â and Ĉ are mono-energetic operators with their respective factors A_(mGus) and C_(mGus) ^(s′). Q_(mG) ^(G′u′s′) are the factors of a spectral operator {circumflex over (Q)}_(λ). It should be noted that each combination {u, s}, respectively {u′, s′}, defines an interface surface of the cube m with u, u′ equal to x, y or z, and s, s′ equal to 1 or r. For example, {x, 1} defines the left interface surface of the cube m along the Cartesian axis x.

The individual terms are given by:

$\begin{matrix} {\left\lbrack {{\hat{\Pi}}^{- 1}j^{({out})}} \right\rbrack_{mgus} = {\frac{1}{c_{1\; {gu}}^{m}}j_{mgus}^{({out})}}} & (21) \\ \begin{matrix} {\left\lbrack {{\hat{P}}_{\lambda}\hat{G}\hat{Y}j^{({out})}} \right\rbrack_{mg}^{g^{\prime}u^{\prime}s^{\prime}} = {\sum\limits_{g^{\prime} = 1}^{ng}{{\hat{P}}_{{gg}^{\prime}}\left\lbrack {\hat{G}\hat{Y}j^{({out})}} \right\rbrack}_{mgus}^{u^{\prime}s^{\prime}}}} \\ {= {\sum\limits_{g^{\prime} = 1}^{ng}{{\hat{P}}_{{gg}^{\prime}}\frac{1}{a_{u^{\prime}}^{m}}\theta_{g^{\prime}u^{\prime}}^{m}j_{g^{\prime}}^{m\leftarrow{\eta {({{mu}^{\prime}s^{\prime}})}}}}}} \end{matrix} & (22) \\ {\left\lbrack {{\hat{\Pi}}^{- 1}\hat{\Omega}\hat{Y}j^{({out})}} \right\rbrack_{mgus}^{s^{\prime}} = {{\frac{1}{c_{1\; {gu}}^{m}}\left\lbrack {{c_{2\; {gu}}^{m}\delta_{{ss}^{\prime}}} + {c_{3\; {gu}}^{m}\left( {1 - \delta_{{ss}^{\prime}}} \right)}} \right\rbrack}j_{g}^{m\leftarrow{\eta {({mus}^{\prime})}}}}} & (23) \end{matrix}$

Equation (17) is then solved, e.g. by using a conventional iterative solving procedure as a Gauss-Seidel procedure.

Thus, a solution is calculated for the elements j^((out)) _(mgus) of the neutron outcurrent column vector j^((out)). This enables to determine the solution of the neutron incurrent column vector j^((in)) according to Equation (14), and finally to determine the solution of the neutron flux column vector Φ according to Equation (10).

The calculated neutron flux column vector Φ obtained through the modelizing method can be used to control an existing nuclear reactor core, e.g. for managing the nuclear fuel, or be used for building a new reactor core.

The modelizing method may be implemented on parallel processors or on a single processor.

This above-disclosed modelizing method has proved to lead to better convergence accuracy, a better computational robustness and a better computational efficiency. This is connected to the solving of a sparse eigensystem wherein the only components of the iterant correspond to neutron outcurrents j^((out)), and do not depend on neutron fluxes.

Further, the convergence accuracy of the modelizing method according to the invention may be improved up to 1E-12, whereas the convergence accuracy obtained with a classic modelizing method is limited to 1E-6.

In other embodiments, the components of the iterant of the spare eigensystem to be solved correspond only to neutron incurrents j^((in)).

In order to further improve robustness and computational efficiency, according to a second aspect of the invention, the eigensystem is first conditioned in a restricted eigensystem corresponding to the eigensystem for a selection of some neutron energy groups. This selection is also called spectral restriction to some energy groups. The restricted eigensystem may then be solved according to the first aspect of the invention. Finally, the solution of the restricted eigensystem is used to solve the eigensystem.

The number NGC of the selected energy groups is smaller than the total number ng of energy groups. NGC may be the number of coarsened spectral bands which are collections of fine energy groups merged into a smaller number of coarse energy groups.

ng is, for example, equal to 8, and NGC may for example be equal to 4, 3, 2 or 1.

According to this second aspect, the Equation (17) for the driving factors d_(Gmus) ^((out)), with its respective terms given by Equations (18) to (20), is expressed as:

$\begin{matrix} {\underset{\underset{\;^{''}{outflow}^{''}}{}}{A_{Gmus}^{({out})}d_{Gmus}^{({out})}} = {\mu\left\lbrack {\underset{\underset{{\,^{''}{istropic}}\mspace{14mu} {production}^{''}}{}}{\sum\limits_{G^{\prime} = 1}^{NGC}{\sum\limits_{u^{\prime} = 1}^{3}{\sum\limits_{{s^{\prime} = 1},r}{Q_{mG}^{G^{\prime}u^{\prime}s^{\prime}}d_{G^{\prime}{\eta {({{mu}^{\prime}s^{\prime}})}}u^{\prime}s^{\prime}}^{({out})}}}}} + \underset{\underset{{}_{}^{}{}_{}^{}}{}}{\sum\limits_{{s^{\prime} = 1},r}{C_{mGus}^{s^{\prime}}d_{{Gmus}^{\prime}}^{({out})}}}} \right\rbrack}} & (24) \end{matrix}$

where G, G′ are coarse neutron energy group indexes, and

in which an isotropic term

$\sum\limits_{G^{\prime} = 1}^{NGC}{\sum\limits_{u^{\prime} = 1}^{3}{\sum\limits_{{s^{\prime} = 1},r}{Q_{mG}^{G^{\prime}u^{\prime}s^{\prime}}d_{G^{\prime}{\eta {({{mu}^{\prime}s^{\prime}})}}u^{\prime}s^{\prime}}^{({out})}}}}$

is independent of the outgoing current direction specified by the Cartesian axis u and orientation s, and a throughflow term

$\sum\limits_{{s^{\prime} = 1},r}{C_{mGus}^{s^{\prime}}d_{{Gmus}^{\prime}}^{({out})}}$

also called anisotropic term, is defined within the same coarse neutron energy group G along the same Cartesian axis u.

The decomposition of the outcurrents leaving the cube m into isotropic and anisotropic terms is illustrated on FIG. 3.

The isotropic term is the same in all directions and the anisotropic term varies between interface surfaces of the cube m.

Solving at first the eigensystem for a spectral restriction to some energy groups, moreover with a decomposition of the outcurrents in which the isotropic term is computed easily, leads to a better computational robustness and a better computational efficiency. This is connected to the reduction of eigensystem dimensions that results from the spectral restriction according to this second aspect of the invention.

In order to further improve robustness and computational efficiency, according to a third aspect of the invention, the iterative solving procedure for a plurality of energy groups may be in form of a multi-level V-cycle 20, as shown on FIG. 4, comprising a top level 21, a first intermediate level 22, four second intermediate levels 24, 26, 28, 30, and three bottom levels 32, 34, 36.

The top level 21 of the V-cycle comprises the iteration for the eigensystem corresponding to the steady-state diffusion equation (1), or NEM equation, for the plurality of neutron energy groups, and the conditioning of the eigensystem into a restricted eigensystem for a spectral restriction to some energy groups according to the second aspect of the invention. The restricted eigensystem resulting from the top level 21 is then fed into a first intermediate level 22 just under the top level 21.

The first intermediate level 22 comprises the conditioning of the restricted eigensystem into a spare eigensystem according to the first aspect of the invention wherein the components of an iterant (j^((out)), j^((in))) of the spare eigensystem only correspond either to neutron incurrents j_(gul) ^(+m), j_(gur) ^(−m) coming into the cubes m or to neutron outcurrents j_(gul) ^(−m), j_(gur) ^(+m), also noted j^((out)) _(mgus), coming from the cubes m. The factors of operators Â,{circumflex over (Q)}_(λ) and Ĉ given by Equations (18) to (20) are computed explicitly for this first intermediate level 22.

Each second intermediate levels 24, 26, 28, 30 comprises the conditioning of a former spare eigensystem for a former selection of neutron energy groups into a latter spare eigensystem for a latter selection of neutron energy groups, the number of neutron energy groups in said latter selection being smaller to the number of neutron energy groups in said former selection. The former spare eigensystem of the second intermediate level 24 subsequent to the first intermediate level 22 in the downward orientation of the multi-level V-cycle 20 is the spare eigensystem resulting from the first intermediate level 22. The former spare eigensystem of each second intermediate level 26, 28, 30 which is not subsequent to the first intermediate level 22 corresponds to the latter spare eigensystem resulting from the precedent second intermediate level 24, 26, 28. In other words, the number of neutron energy groups decreases from a second intermediate level to the next second intermediate level in the downward orientation. At the last second intermediate level 30, the number of neutron energy groups may be equal to 1. It should be noted that this restriction of the number of neutron energy groups for the second intermediate levels 24, 26, 28, 30 may be done according to a spectral condensation algebra, which will be described later, and not according to the second aspect of the invention.

Bottom levels 32, 34, 36 comprise, in the downward orientation of the V-cycle, the solving, according to state of the art procedures, of the last spare eigensystem for a single energy group determined at the last second intermediate level 30. Bottom levels 34, 36 correspond to a spatial restriction of the eigensystem resulting from the precedent bottom level 32, 34 in respective coarsened grids with cubes being larger than the cubes of the precedent bottom level 32, 34.

At the bottom level 36 of the V-cycle, a solution of the eigensystem for the single energy group is computed.

This solution is then reintroduced in the upper levels of the V-cycle in the upward orientation so that solutions are computed for the respective spare eigensystems.

At the top level 21 of the V-cycle in the upward orientation, the solution of the NEM equation for the plurality of energy groups is computed.

In the illustrated embodiment of FIG. 4, the number ng of neutron energy groups for the NEM equation at the top level 21 may be equal to 8. For the intermediate levels 22, 24, 26, 28, 30, the number of neutron energy groups in the respective selections may be respectively equal to four, three, two and one. The three bottom levels 32, 34, 36 of the V-cycle shown on FIG. 4 comprise the solving of said last spare eigensystem for said one energy group according to the CMR procedure.

The four intermediate levels 22, 24, 26, 28 corresponding to the solving of respective spare eigensystems are also designated by the respective references SR4, SR3, SR2 and SR1 (FIG. 5).

The factors of the mono-energetic operator Â for the level SR4 are computed explicitly. Subsequently, the factors of the mono-energetic operator Â for the level SR3 are derived from the ones for the level SR4, as shown on FIG. 5, where each box 37 represents a neutron energy group, through:

A_(m;SR3) ^(1u′s′)=A_(m;SR4) ^(1u′s′)

A_(m;SR3) ^(2u′s′)=A_(m;SR4) ^(2u′s′)

A _(m;SR3) ^(3u′s′) =A _(m;SR4) ^(3u′s′) +A _(m;SR4) ^(4u′s′)  (25)

Equation (25) is illustrated on FIG. 5 by the arrows 38 between levels 22 and 24.

Subsequently, the factors of the mono-energetic operator Â for the level SR2 are derived from the ones for the level SR3 through:

A _(m;SR2) ^(1u′s′) =A _(m;SR3) ^(1u′s′) +A _(m;SR3) ^(2u′s′)

A_(m;SR2) ^(2u′s′)=A_(m;SR3) ^(3u′s′)  (26)

Equation (26) is illustrated on FIG. 5 by the arrows 40 between levels 24 and 26.

Finally, the factors of the mono-energetic operator Â for the level SR1 are derived from the ones for the level SR2 through:

A _(m;SR1) ^(u′s′) =A _(m;SR2) ^(1u′s′) +A _(m;SR2) ^(2u′s′)  (27)

Equation (27) is illustrated on FIG. 5 by the arrows 42 between levels 26 and 28.

Equations (25) to (27) define a spectral condensation algebra for the mono-energetic operator Â corresponding to a spectral grid partitioning strategy shown in FIG. 5. It should be noted that another spectral condensation algebra for the mono-energetic operator Â with different equations may be defined with another spectral grid partitioning strategy, i.e. with a different arrangement of the boxes 37.

The factors of the mono-energetic operator Ĉ are derived in a similar manner as for the factors of the mono-energetic operator Â, from the level SR4 to the level SR1 in the downward orientation.

The factors of the spectral operator {circumflex over (Q)}_(λ) for the level SR4 are computed explicitly. Subsequently, the factors of the spectral operator {circumflex over (Q)}_(λ) for the level SR3 are derived from the ones for the level SR4 through:

Q_(m1;SR3) ^(1u′s′)=Q_(m1;SR4) ^(1u′s′)

Q_(m2;SR3) ^(2u′s′)=Q_(m2;SR4) ^(2u′s′)

Q_(m1;SR3) ^(2u′s′)=Q_(m1;SR4) ^(2u′s′)

Q_(m2;SR3) ^(1u′s′)=Q_(m2;SR4) ^(1u′s′)

Q _(m2;SR3) ^(3u′s′) =Q _(m2;SR4) ^(3u′s′) +Q _(m2;SR4) ^(4u′s′)

Q _(m3;SR3) ^(2u′s′) =Q _(m3;SR4) ^(2u′s′) +Q _(m4;SR4) ^(2u′s′)

Q _(m1;SR3) ^(3u′s′) =Q _(m1;SR4) ^(3u′s′) +Q _(m1;SR4) ^(4u′s′)

Q _(m3;SR3) ^(1u′s′) =Q _(m3;SR4) ^(1u′s′) +Q _(m4;SR4) ^(1u′s′)

Q _(m3;SR3) ^(3u′s′) =Q _(m3;SR4) ^(3u′s′) +Q _(m3;SR4) ^(4u′s′) +Q _(m4;SR4) ^(3u′s′) +Q _(m4;SR4) ^(4u′s′)  (28)

Subsequently, the factors of the spectral operator {circumflex over (Q)}_(λ) for the level SR2 are derived from the ones for the level SR3 through:

Q _(m2;SR2) ^(1u′s′) =Q _(m3;SR3) ^(1u′s′) +Q _(m3;SR3) ^(2u′s′)

Q _(m1;SR2) ^(2u′s′) =Q _(m1;SR3) ^(3u′s′) +Q _(m2;SR3) ^(3u′s′)

Q_(m2;SR2) ^(2u′s′)=Q_(m2;SR3) ^(2u′s′)

Q _(m1;SR2) ^(1u′s′) =Q _(m1;SR3) ^(1u′s′) +Q _(m1;SR3) ^(2u′s′) +Q _(m2;SR3) ^(1u′s′) +Q _(m2;SR3) ^(2u′s′)  (29)

Finally, the factors of the spectral operator {circumflex over (Q)}_(λ) for the level SR1 are derived from the ones for the level SR2 through:

Q _(m;SR1) ^(u′s′) =Q _(m1;SR2) ^(1u′s′) +Q _(m1;SR2) ^(2u′s′) +Q _(m2;SR2) ^(1u′s′) +Q _(m2;SR2) ^(2u′s′)  (30)

Equations (28) to (30) define a spectral condensation algebra for the spectral operator {circumflex over (Q)}_(λ) corresponding to a spectral grid partitioning strategy not shown and similar to the one shown in FIG. 5 for the mono-energetic operators Â and Ĉ. It should be noted that another spectral condensation algebra for the spectral operator {circumflex over (Q)}_(λ) may also be define with another spectral grid partitioning strategy.

Thus, a solution is calculated for the elements j^((out)) _(mgus) of the neutron outcurrent column vector j^((out)) at the top level 21 of the V-cycle in the upward orientation. This enables to determine the solution of the neutron incurrent column vector j^((in)) according to Equation (14), and finally to determine the solution of the neutron flux column vector Φ according to Equation (10).

The nuclear reactor core is then built or operated on the basis of the calculated neutron flux column vector Φ.

Using spectral condensation algebras, wherein no complex arithmetic operation is involved, for the operators Â, Ĉ and {circumflex over (Q)}_(λ) at the respective levels SR3, SR2 and SR1 allows the operators Â, Ĉ and {circumflex over (Q)}_(λ) to be computed very cheaply, thus leading to a better computational robustness and a better computational efficiency of the modelizing method.

In order to further improve robustness and computational efficiency, according to a fourth aspect of the invention, the cubes 10 are split into a first category and a second category.

In the following description and as shown on FIG. 6, the cubes 10R of the first category will be called the red cubes and the cubes 10B of the second category will be called the black cubes but no specific restrictive meaning should be associated with the words “black” and “red”. Each red cube 10R has only black cubes 10B as direct neighbours. Thus, most of the red cubes 10R have six direct black neighbours 10B. It should be understood by “direct” neighbours, the cubes sharing a common surface with the considered cube.

Consequently, and as illustrated by FIG. 6, the grid 12 has a visual analogy with respect to the dark and light regions of a checkerboard in a two-dimensional representation.

Then, the cubes are numbered, starting for example by the red cubes 10R and ending by the black cubes 10B.

In the following description, such a split of the cubes in two categories and the numbering of one category after the other will be referred to as red-black ordering.

An advantage of the red-black ordering of the cubes in comparison with the state of the art lexicographical ordering is that, for a red cube 1R, all its direct neighbours will be black, and vice versa.

The Equation (24), which the computer has to solve in order to calculate neutron flux within the core, can be written in the matrix-vector form:

Âd=μ[{circumflex over (Q)} _(λ) +Ĉ]d   (31)

Using a variable parameter γ, which value is typically comprised between 0.9 and 0.95, so that the product γμ forms a shift, an iteration of Equation (31) is written with the following shift-inverted implicit form:

[Â−γμ ^((n-1))({circumflex over (Q)} _(λ) +Ĉ)] d ^((n)) =s ^((n-1))  (32)

where s ^((n-1)) is a source given by:

s ^((n-1))=(1−γ)μ^((n-1))({circumflex over (Q)} _(λ) +Ĉ) d ^((n-1))  (33)

The spectral operator {circumflex over (Q)}_(λ) and the mono-energetic operator Ĉ are sparse, coupling red cubes 10R only to direct black neighbours 10B and vice versa. Thus, the red-black ordering enables the following convenient relationship between the red and the black parts of the equation:

Âd _(red)−γμ^((n-1))({circumflex over (Q)} _(λ) +Ĉ) d _(black) =s _(red)

Âd _(black)−γμ^((n-1))({circumflex over (Q)} _(λ) +Ĉ) d _(red) =s _(black)  (34)

Equation (34) is transformed into the following equivalent equation for the red solution part only:

$\begin{matrix} {{{\overset{\sim}{\Theta}}_{red}{\underset{\_}{d}}_{red}} = {{\overset{\sim}{s}}_{red}\mspace{14mu} {with}\left\{ \begin{matrix} {{\overset{\sim}{\Theta}}_{red} = {\hat{1} - {\left( {\gamma\mu}^{({n - 1})} \right)^{2}\left\lbrack {{\hat{A}}^{- 1}\left( {{\hat{Q}}_{\lambda} + \hat{C}} \right)} \right\rbrack}^{2}}} \\ {{{\overset{\sim}{\underset{\_}{s}}}_{red} = {{\hat{A}}^{- 1}\left\lbrack {{\underset{\_}{s}}_{red} + {{\gamma\mu}^{({n - 1})}{{\hat{A}}^{- 1}\left( {{\hat{Q}}_{\lambda} + \hat{C}} \right)}{\hat{A}}^{- 1}{\underset{\_}{s}}_{black}}} \right\rbrack}},} \end{matrix} \right.}} & (35) \end{matrix}$

From a calculation point of view, the use of a red-black ordering means that, during an iterative solving procedure if, in the first half of an iteration, the red components d _(red) of the iterant d are updated, then, during the second part of the iteration, all the black components d _(black) will be updated on the basis of the red components of their red neighbours d _(red). In other words, the value for each black cube 10B will be calculated on the basis of the values for all its direct red neighbours 10R.

Using the red-black ordering improves the computation of the operators Â, Ĉ and {circumflex over (Q)}_(λ) described in the first, second or third aspects of the invention. Thus, the red-black ordering may be used in complement of the first, second or third aspects of the invention in order to improve the computational efficiency.

Such a red-black ordering proves to be especially useful when used with a particular solving procedure which constitutes a fifth aspect of the invention.

This procedure is a particular highly robust stabilized Bi-Conjugate Gradient Stabilized (Bi-CGStab) procedure. An adequate introductory description of this procedure can be found in the following references:

-   -Y. Saad, “Iterative Methods for Sparse Linear Systems”, second     edition, Society for Industrial and Applied Mathematics (SIAM)     (2003); -   H. A. van der Vorst, “Bi-CGSTAB: a Fast and Smoothly Converging     Variant of Bi-CG for the solution of nonsymmetric linear systems”,     SIAM J. Sci. Stat. Comput. 13(2), pp. 631-644 (1992),

The Bi-CGStab procedure is derived from a minimization principle for a functional of d, with given Θ and s, for which stationarity applies with regard to small variations δd around the specific optimum d which satisfies, exactly, the linear system given by Equation (35), and for which the functional assumes a minimum value.

Thus, it is possible to define a solving procedure driven by the minimization of a functional rather than by more direct considerations on how to solve Equation (35) efficiently. The Bi-CGStab procedure follows from such a minimization principle, where the successive changes in the iterant are organized such that each change in the functional (which is like a Galerkin-weighted integrated residual) is orthogonal with respect to all of the preceding changes.

The particular Bi-CGStab procedure according to the fifth aspect of the invention is given below with solution vector d, solution residual r (with r=s−Θd) and auxiliary vector r*, s and p, and with initial solution estimate d₀:

$\begin{matrix} {\mspace{79mu} \left\{ \begin{matrix} {{{1.\mspace{14mu} r_{0}}:={\overset{\sim}{s} - {\text{?}d_{0}}}},{r^{*} = r_{0}}} \\ {{{2.\mspace{14mu} p_{0}}:=r_{0}},} \\ {{{3.\mspace{14mu} {do}\mspace{14mu} i} = 0},1,\ldots \mspace{14mu},N} \\ {{{4.\mspace{14mu} \alpha_{i}}:=\frac{\left( {r^{*},r_{i}} \right)}{\left( {r^{*},{\text{?}p_{i}}} \right)}},} \\ {{{5.\mspace{14mu} s_{i}}:={r_{i} - {\alpha_{i\text{?}}\text{?}p_{i}}}},} \\ {{{6.\mspace{11mu} \omega_{i}}:=\frac{\left( {{\text{?}s_{i}},s_{i}} \right)}{\left( {{\text{?}s_{i}},{\text{?}s_{i}}} \right)}},} \\ {{{7.\mspace{14mu} d_{i + 1}}:={d_{i} + {\alpha_{i}p_{i}} + {\omega_{i}s_{i}}}},} \\ {{{8.\mspace{14mu} r_{i + 1}}:={s_{i} - {\omega_{i}\text{?}s_{i}}}},} \\ {{{9.\mspace{14mu} \beta_{i}}:=\frac{\left( {r^{*},r_{i + 1}} \right)\alpha_{j}}{\left( {r^{*},r_{i}} \right)\omega_{j}}},} \\ {{10.\mspace{14mu} p_{i + 1}}:={r_{i + 1} + {\beta_{i + 1}\left( {p_{i} - {\omega_{i}\text{?}p_{i}}} \right)}}} \\ {11.\mspace{14mu} {end}\mspace{14mu} {do}} \end{matrix} \right.} & (36) \\ {\text{?}\text{indicates text missing or illegible when filed}} & \; \end{matrix}$

The above Bi-CGStab sequence is truncated after N steps, with usually N<3.

For the Bi-CGStab procedure, the preconditioning is based on the shift-inverted implicit form of Equation (32), with typically 0.9<γ<0.95.

With this choice for the shift γμ, the operator s is guaranteed to remain nonsingular since, during the solution process, γμ will converge down to γ times the smallest possible eigenvalue of the system.

Solving Equation (32) is numerically equivalent to determining the flux distribution in a slightly subcritical system with a neutron source, which is a perfect scenario for deploying advanced preconditioned Krylov procedure.

Using the red-black ordering, Equation (32) is transformed into Equation (35) as above explained. The preconditioned system given by Equation (35) constitutes the sixth aspect of the invention.

Once Equation (35) has been solved through the Bi-CGStab procedure the black solution part is to be computed from the black part of Equation (34).

Use of this particular way of preconditioning, which means that the direct neutron interaction between neighboring (red vs. black) nodes, as projected onto the grid, is preincluded in the system to be solved, making the unity operator in Equation (35) more dominant since

∥(Â ⁻¹({circumflex over (Q)} _(λ) +Ĉ))² ∥<∥Â ⁻¹({circumflex over (Q)} _(λ) +Ĉ)∥,  (37)

given that

∥Â ⁻¹({circumflex over (Q)} _(λ) +Ĉ)∥<1  (38)

This way of preconditioning manages to pre-include, at low computational cost, crucial information (or the major part of that information) with regard to the physical interactions between nodes that determine the spatial couplings and hence the solution of the equation.

In another embodiment, the iterative solving procedure is a Gauss-Seidel procedure, or an iterative procedure in the Krylov subspace, such as a generalized minimal residual method, also abbreviated GMRES, or a plain Jacobi method.

According to a seventh aspect of the invention, a variational principle for improved eigenvalue computation will be described in the following description.

Equation (16) corresponding to the spare eigensystem, above described for the first, second or third aspect of the invention, is written in the following form, with the second neutron eigenvalue μ and the neutron outcurrent vector column j_(out):

j _(out)=μ{circumflex over (Π)}{circumflex over (P)} _(λ) ĜŶj _(out) +{circumflex over (Ω)}Ŷj _(out),

j _(out) =μc ₁ φ+{circumflex over (Ω)}Ŷj _(out)  (39)

where c₁ is another notation for the operator {circumflex over (Π)} depending on the cube properties.

In what follows, we will assume that the first neutron eigenvalue λ fulfills the role of a scalar control parameter. Using the property that the second neutron eigenvalue μ approaches unity if the total solution converges and thus stabilizes, the variational principle, or perturbation approach, comprises the varying the first neutron eigenvalue λ to drive the second neutron eigenvalue μ towards 1 and to accelerate the convergence of the spare eigensystem solution. This variation of the first neutron eigenvalue λ may be done prior to every iteration of the spare eigensystem, or prior to every second, third, fourth or fifth iteration of the spare eigensystem.

The variation of the first neutron eigenvalue λ is an application of a variation δλ to λ such that λ is driven to λ+δλ, which impacts the second neutron eigenvalue μ through a perturbed interface current equation:

$\begin{matrix} \begin{matrix} {{j_{out} + {\delta \; j_{out}}} = {\left\lbrack {{\left( {\mu + {\delta \; \mu}} \right){\hat{\Pi}\left( {{\hat{P}}_{\lambda} + {{\delta\lambda}\frac{\partial{\hat{P}}_{\lambda}}{\partial\lambda}}} \right)}\hat{G}} + \hat{\Omega}} \right\rbrack {\hat{Y}\left( {j_{out} + {\delta \; j_{out}}} \right)}}} \\ {= {{\left( {\mu + {\delta \; \mu}} \right){c_{1}\left( {\varphi + {\delta \; \lambda \frac{\partial\varphi}{\partial\lambda}}} \right)}} + {\hat{\Omega}{\hat{Y}\left( {j_{out} + {\delta \; j_{out}}} \right)}}}} \end{matrix} & (40) \end{matrix}$

with the partial operator derivative:

$\begin{matrix} {{\hat{\Pi}\frac{\partial{\hat{P}}_{\lambda}}{\partial\lambda}\hat{G}\hat{Y}j_{out}} \equiv {c_{1}\frac{\partial\varphi}{\partial\lambda}}} & (41) \end{matrix}$

As perturbations δj_(out) are expected to be increasingly small during the iterative procedure, they are conveniently ignored in Equation (40), and the integration with an arbitrary adjoined weighting function ω^(†) yields the following expression:

$\begin{matrix} {{{\delta\mu}\lbrack{\delta\lambda}\rbrack} \cong {\frac{\langle\left. \omega^{\dagger} \middle| {c_{1}\varphi} \right.\rangle}{\langle\left. \omega^{\dagger} \middle| {c_{1}\frac{\partial\varphi}{\partial\lambda}} \right.\rangle}{\delta\lambda}}} & (42) \end{matrix}$

As the variation of the first neutron eigenvalue λ is such that the second neutron eigenvalue μ is driven towards 1, i.e. that μ+δμ is driven towards 1, the approximation δμ≡1−μ is imposed. With this approximation and the Equation (42), the following equation is obtained:

$\begin{matrix} {{\delta\lambda} \cong {\frac{\langle\left. \omega^{\dagger} \middle| {c_{1}\varphi} \right.\rangle}{\langle\left. \omega^{\dagger} \middle| {c_{1}\frac{\partial\varphi}{\partial\lambda}} \right.\rangle}\left( {1 - \mu} \right)}} & (43) \end{matrix}$

Using the equivalence μc₁φ=j_(out)−{circumflex over (Ω)}Ŷj_(out), δλ is given by:

$\begin{matrix} {{{\delta\lambda} \cong \frac{\langle\left. \omega^{\dagger} \middle| {j_{out} - {c_{1}\varphi} + {\hat{\Omega}\hat{Y}j_{out}}} \right.\rangle}{\langle\left. \omega^{\dagger} \middle| {c_{1}\frac{\partial\varphi}{\partial\lambda}} \right.\rangle}} = \frac{\langle\left. \omega^{\dagger} \middle| r_{out} \right.\rangle}{\langle\left. \omega^{\dagger} \middle| {c_{1}\frac{\partial\varphi}{\partial\lambda}} \right.\rangle}} & (44) \end{matrix}$

where r_(out) represents the residual of the interface outcurrent balance equation, i.e. Equation (39), with the imposed target value for the second neutron eigenvalue μ equal to 1. The residual r_(out) needs to be computed for each NEM iteration step in any case.

The first neutron eigenvalue λ, considered in this aspect as a scalar control parameter, is then updated such that:

$\begin{matrix} {{\lambda^{({new})} = {\lambda^{({prev})} + \frac{\langle\left. \omega^{\dagger} \middle| r_{out}^{({prev})} \right.\rangle}{\langle\left. \omega^{\dagger} \middle| {c_{1}\frac{\partial\varphi}{\partial\lambda}} \right.\rangle}}},} & (45) \end{matrix}$

where λ^((prev)) and λ^((new)) are respectively the previous and the updated value of the first neutron eigenvalue λ.

For determining the partial operator derivative

$\frac{\partial\varphi}{\partial\lambda}$

and using Equation (7) for example, the neutron flux Φ is written:

φ=({circumflex over (R)}−Ŝ−λ{circumflex over (F)})⁻¹ ĜŶj _(out)  (46)

from which it follows that:

$\begin{matrix} {\frac{\partial\varphi}{\partial\lambda} = {\left\lbrack {\frac{\partial}{\partial\lambda}\left( {\hat{R} - \hat{S} - {\lambda \; \hat{F}}} \right)^{- 1}} \right\rbrack \hat{G}\hat{Y}j_{out}}} & (47) \end{matrix}$

An approximate derivative

$\frac{\partial\overset{\sim}{\varphi}}{\partial\lambda}$

is then computed by neglecting the upper-diagonal part of the matrix relative to the inscatter operator Ŝ such that Ŝ=Ŝ_(LD), i.e. by neglecting the upscattering:

$\begin{matrix} {\frac{\partial\overset{\sim}{\varphi}}{\partial\lambda} = {\left\lbrack {\frac{\partial}{\partial\lambda}\left( {\hat{R} - {\hat{S}}_{LD} - {\lambda \; \hat{F}}} \right)^{- 1}} \right\rbrack \hat{G}\hat{Y}j_{out}}} & (48) \end{matrix}$

It should be noted that in many computational cases this is not even an approximation, but numerically exact if no upscattering is modeled.

It is assumed that:

$\begin{matrix} {\frac{\partial\varphi}{\partial\lambda} \cong \frac{\partial\overset{\sim}{\varphi}}{\partial\lambda}} & (49) \end{matrix}$

which will be sufficient for a successful application of the variational principle.

For computing

$\frac{\partial\overset{\sim}{\varphi}}{\partial\lambda},$

it is first written:

{circumflex over (R)}−Ŝ _(LD) −λ{circumflex over (F)}=({circumflex over (R)}−Ŝ _(LD))({circumflex over (1)}−λ({circumflex over (R)}−Ŝ _(LD))⁻¹ {circumflex over (F)})  (50)

from which it follows that:

({circumflex over (R)}−Ŝ _(LD) −λ{circumflex over (F)})⁻¹=({circumflex over (1)}−λ({circumflex over (R)}−Ŝ _(LD))⁻¹ {circumflex over (F)})⁻¹({circumflex over (R)}−Ŝ _(LD))⁻¹  (51)

Then defining an operator notation {circumflex over (B)} with:

{circumflex over (B)}=({circumflex over (R)}−Ŝ _(LD))⁻¹ {circumflex over (F)}  (52)

and in order to implicitly compute

${\frac{\partial}{\partial\lambda}\left\lbrack {\hat{1} - {\lambda \; \hat{B}}} \right\rbrack}^{- 1},$

the Taylor formula is applied to {circumflex over (1)}−λ{circumflex over (B)}:

$\begin{matrix} {\left\lbrack {\hat{1} - {\lambda \; \hat{B}}} \right\rbrack^{- 1} = {{\hat{1} + {\lambda \; \hat{B}} + {\lambda^{2}{\hat{B}}^{2}} + {\lambda^{3}{\hat{B}}^{3}} + \ldots} = {\sum\limits_{n = 0}^{\infty}\left\lbrack {\lambda \; \hat{B}} \right\rbrack^{n}}}} & (53) \end{matrix}$

The Taylor expansion is rearranged as:

{circumflex over (1)}+[{circumflex over (1)}+λ{circumflex over (B)}+λ ² {circumflex over (B)} ²+λ³ {circumflex over (B)} ³ + . . . ]λ{circumflex over (B)}={circumflex over (1)}+[{circumflex over (1)}−λ{circumflex over (B)}] ⁻¹ λ{circumflex over (B)}  (54)

By application of the chain rule to Equation (54), the derivative

${\frac{\partial}{\partial\lambda}\left\lbrack {\hat{1} - {\lambda \; \hat{B}}} \right\rbrack}^{- 1}$

is given by:

$\begin{matrix} {{\frac{\partial}{\partial\lambda}\left\lbrack {\hat{1} - {\lambda \; \hat{B}}} \right\rbrack}^{- 1} = {{\left\lbrack {\hat{1} - {\lambda \; \hat{B}}} \right\rbrack^{- 1}\hat{B}} + {\left\lbrack {\frac{\partial}{\partial\lambda}\left\lbrack {\hat{1} - {\lambda \; \hat{B}}} \right\rbrack}^{- 1} \right\rbrack \lambda \; \hat{B}}}} & (55) \end{matrix}$

which yields:

$\begin{matrix} {{\left\lbrack {\hat{1} - {\lambda \; \hat{B}}} \right\rbrack {\frac{\partial}{\partial\lambda}\left\lbrack {\hat{1} - {\lambda \; \hat{B}}} \right\rbrack}^{- 1}} = {\left\lbrack {\hat{1} - {\lambda \; \hat{B}}} \right\rbrack^{- 1}\hat{B}}} & (56) \end{matrix}$

The final expression that allows an efficient iterative scheme for determining the derivative

${\frac{\partial}{\partial\lambda}\left\lbrack {\hat{1} - {\lambda \; \hat{B}}} \right\rbrack}^{- 1}$

is obtained by premultiplication of Equation (56) with {circumflex over (1)}−λ{circumflex over (B)}, which gives:

$\begin{matrix} {{\left\lbrack {\hat{1} - {\lambda \; \hat{B}}} \right\rbrack^{2}{\frac{\partial}{\partial\lambda}\left\lbrack {\hat{1} - {\lambda \; \hat{B}}} \right\rbrack}^{- 1}} = \hat{B}} & (57) \end{matrix}$

By writing [{circumflex over (1)}−λ{circumflex over (B)}]²={circumflex over (1)}−2λ{circumflex over (B)}+λ²{circumflex over (B)}², computation of

$\frac{\partial\overset{\sim}{\varphi}}{\partial\lambda}$

is obtained from:

$\begin{matrix} {{\left\lbrack {\hat{1} - {2\lambda \; \hat{B}} + {\lambda^{2}{\hat{B}}^{2}}} \right\rbrack \frac{\partial\overset{\sim}{\varphi}}{\partial\lambda}} = s} & (58) \end{matrix}$

with the source term s defined by:

s={circumflex over (B)}({circumflex over (R)}−Ŝ _(LD))⁻¹ ĜŶj _(out)=({circumflex over (R)}−Ŝ _(LD))⁻¹ {circumflex over (F)}({circumflex over (R)}−Ŝ _(LD))⁻¹ ĜŶj _(out)  (59)

In the case of two energy groups, Equation (58) is solved directly and analytically.

In the case of more than two energy groups, Equation (58) is solved iteratively, without exactness required in early iteration phases, through application of:

$\begin{matrix} {{\left\lbrack \frac{\partial\overset{\sim}{\varphi}}{\partial\lambda} \right\rbrack^{({new})} = {s + {2\lambda \; {\hat{B}\left\lbrack \frac{\partial\overset{\sim}{\varphi}}{\partial\lambda} \right\rbrack}^{({old})}} - {\lambda^{2}{{\hat{B}}^{2}\left\lbrack \frac{\partial\overset{\sim}{\varphi}}{\partial\lambda} \right\rbrack}^{({old})}}}},} & (60) \end{matrix}$

where

$\left\lbrack \frac{\partial\overset{\sim}{\varphi}}{\partial\lambda} \right\rbrack^{({old})}$

and

$\left\lbrack \frac{\partial\overset{\sim}{\varphi}}{\partial\lambda} \right\rbrack^{({new})}$

are respectively the previous and updated values of the approximate derivative

$\frac{\partial\overset{\sim}{\varphi}}{\partial\lambda}.$

Early means about the first third up to the first half of the totally needed number of iteration steps.

It should be noted that the iterations from the computation of

$\frac{\partial\overset{\sim}{\varphi}}{\partial\lambda}$

can be abort rather early, since this variational approach needs only an approximate value of

$\frac{\partial\overset{\sim}{\varphi}}{\partial\lambda}$

to be useful.

Thus, this variational principle according to this seventh aspect of the invention is very effective, because the numerator

ω^(†)|r_(out) ^((prev))

in Equation (45) becomes smaller and smaller upon convergence, whereas the denominator

$\langle{\omega^{\dagger}{c_{1}\frac{\partial\varphi}{\partial\lambda}}}\rangle$

will converge rather quickly to an adequate value. In this seventh aspect, the numerator defines the driving principle since it converges towards zero.

Varying the first neutron eigenvalue λ according to Equation (45) drives the second neutron eigenvalue μ towards 1 and accelerates the convergence of the spare eigensystem solution. This variation of the first neutron eigenvalue λ may be done prior to every iteration of the spare eigensystem, or prior to every second, third, fourth or fifth iteration of the spare eigensystem.

Thus, the variational principle of the first neutron eigenvalue λ may be used in complement of the first, second or third aspects of the invention in order to improve the computational efficiency.

All the above mentioned products of this seventh aspect can be reduced to the black part of the grid 12 without losing numerical efficiency in the method, so that the red-black ordering above described in the fourth aspect of the invention may be used in complement of this seventh aspect.

According to an eighth aspect of the invention, the above described variational principle for the eigenvalue computation can be generalized for the computation of a control parameter being noted θ, that typically modulates the removal operator {circumflex over (R)} given by Equation (4), the modulated removal operator being noted {circumflex over (R)}_(θ).

In the example of a modulation in all positions, the control parameter θ is the boron concentration. In the example of a modulation in selected positions, the control parameter θ is a parameter for controlling a rod insertion depth for a group of selected control rods.

It is assumed that {circumflex over (R)}={circumflex over (R)}_(θ)

Equation (16) is then written in the following form, with the second neutron eigenvalue μ:

j _(out) =μ{circumflex over (Π)}{circumflex over (P)} _(θ) ĜŶj _(out) +{circumflex over (Ω)}Ŷj _(out)

j _(out) =μc ₁ φ+{circumflex over (Ω)}Ŷj _(out)  (61)

with a symbolic spectral operator {circumflex over (P)}_(θ) defined by

{circumflex over (P)} _(θ)=({circumflex over (R)} _(θ) −Ŝ−{circumflex over (F)})⁻¹  (62)

Using the property that the second neutron eigenvalue μ approaches unity if the total solution, including the correct value of the control parameter θ, converges and thus stabilizes, the variational principle, or perturbation approach, comprises varying the control parameter θ to drive the second neutron eigenvalue μ towards 1.

The variation of the control parameter θ is an application of a variation δθ to θ such that θ is driven to θ+δθ, which impacts the second neutron eigenvalue μ through a perturbed interface current equation:

$\begin{matrix} {{{j_{out} + {\delta \; j_{out}}} = {\left\lbrack {{\left( {\mu + {\delta\mu}} \right){\hat{\Pi}\left( {{\hat{P}}_{\vartheta} + {{\delta\vartheta}\frac{\partial{\hat{P}}_{\vartheta}}{\partial\vartheta}}} \right)}\hat{G}} + \hat{\Omega}} \right\rbrack {\hat{Y}\left( {j_{out} + {\delta \; j_{out}}} \right)}}}{{j_{out} + {\delta \; j_{out}}} = {{\left( {\mu + {\delta\mu}} \right){c_{1}\left( {\varphi + {{\delta\vartheta}\frac{\partial\varphi}{\partial\vartheta}}} \right)}} + {\hat{\Omega}{\hat{Y}\left( {j_{out} + {\delta \; j_{out}}} \right)}}}}} & (63) \end{matrix}$

with the partial operator derivative:

$\begin{matrix} {{\hat{\Pi}\frac{\partial{\hat{P}}_{\vartheta}}{\partial\vartheta}\hat{G}\hat{Y}j_{out}} \equiv {c_{1}\frac{\partial\varphi}{\partial\vartheta}}} & (64) \end{matrix}$

As perturbations δj_(out) are expected to be increasingly small during the iterative procedure, they are conveniently ignored in Equation (63), and the integration with an arbitrary adjoined weighting function ω^(†) yields the following expression:

$\begin{matrix} {{{\delta\mu}\lbrack{\delta\vartheta}\rbrack} \cong {\frac{\langle{\omega^{\dagger}{c_{1}\varphi}}\rangle}{\langle{\omega^{\dagger}{c_{1}\frac{\partial\varphi}{\partial\vartheta}}}\rangle}{\delta\vartheta}}} & (65) \end{matrix}$

As the variation of the control parameter θ is such that the second neutron eigenvalue μ is driven towards 1, i.e. that μ+δμ is driven towards 1, the approximation δμ≡1−μ is imposed. With this approximation and the Equation (65), the following equation is obtained:

$\begin{matrix} {{\delta\vartheta} \cong {\frac{\langle{\omega^{\dagger}{c_{1}\varphi}}\rangle}{\langle{\omega^{\dagger}{c_{1}\frac{\partial\varphi}{\partial\vartheta}}}\rangle}\left( {1 - \mu} \right)}} & (66) \end{matrix}$

Using the equivalence μc₁φ=j_(out)−{circumflex over (Ω)}Ŷj_(out), δθ is given by:

$\begin{matrix} {{{\delta\vartheta} \cong \frac{\langle{\omega^{\dagger}{j_{out} - {c_{1}\varphi} + {\hat{\Omega}\hat{Y}j_{out}}}}\rangle}{\langle{\omega^{\dagger}{c_{1}\frac{\partial\varphi}{\partial\vartheta}}}\rangle}} = \frac{\langle{\omega^{\dagger}r_{out}}\rangle}{\langle{\omega^{\dagger}{c_{1}\frac{\partial\varphi}{\partial\vartheta}}}\rangle}} & (67) \end{matrix}$

where r_(out) represents the residual of the interface outcurrent balance equation, i.e. Equation (39), with the imposed target value for the second neutron eigenvalue μ equal to 1.

The control parameter θ is then updated such that:

$\begin{matrix} {\vartheta^{({new})} = {\vartheta^{({prev})} + \frac{\langle{\omega^{\dagger}r_{out}^{({prev})}}\rangle}{\langle{\omega^{\dagger}{c_{1}\frac{\partial\varphi}{\partial\vartheta}}}\rangle}}} & (68) \end{matrix}$

It is assumed that

$\frac{\partial\varphi}{\partial\vartheta} \cong \frac{\partial\overset{\sim}{\varphi}}{\partial\vartheta}$

which will be sufficient for a successful application of the variational principle to the control parameter θ.

For computing

$\frac{\partial\overset{\sim}{\varphi}}{\partial\vartheta},$

the above described conditioning with application of the Taylor formula is also used in the same manner.

The eighth aspect of the invention offers the same advantages as the above described seventh aspect of the invention, and may be used in complement of the first, second or third aspects of the invention in a manner similar to that for the above described seventh aspect of the invention, in order to improve the computational efficiency.

FIG. 7 represents a set of convergence curves for different eigensystem iterative solving procedures with the number of pursued NEM iterative steps in abscissa and the fast flux error in ordinate, which is the maximum solution error of the neutron flux for the fast neutrons energy group. Since all energy groups are spectrally coupled, the maximum solution errors of the neutron flux for the other energy groups are quite similar to the fast flux error. Thus, the comparison between different eigensystem iterative solving procedures is possible through these convergence curves.

The curve 50 is the convergence curve for the classic Coarse Mesh Rebalancing (CMR) procedure with use of single precision, and the curve 51 is the convergence curve for the classic CMR procedure with use of double precision. The single and double precisions are the classic precisions used for representing the floating point numbers in a computer program product.

The curve 52 is the convergence curve for the iterative procedure according to the first and the seventh aspects of the present invention for a single energy group with use of single precision, and the curve 53 is the convergence curve for the iterative procedure according to the same aspects of the present invention with use of double precision.

The curve 54 is the convergence curve for the iterative procedure according to the first and the second aspects of the present invention for four coarse energy groups with use of single precision, and the curve 55 is the convergence curve for the iterative procedure according to the same aspects of the present invention with use of double precision.

The curve 56 is the convergence curve for the iterative procedure according to the first, the second and seventh aspects of the present invention for four coarse energy groups with use of single precision, and the curve 57 is the convergence curve for the iterative procedure according to the same aspects of the present invention with use of double precision.

The procedure according to the first, the second and seventh aspects for four coarse energy groups with use of double precision (curve 57) is the procedure with both the smallest error with a value substantially equal to 10⁻¹³ for 50 pursued NEM iteration steps and the best computational efficiency, as illustrated by the gradient of the convergence curves which is maximum for the curve 57.

The procedure according to the first and the seventh aspects for a single energy group with use of double precision (curve 53) also provides a small error with a value substantially equal to 10⁻⁹ for 130 pursued NEM iteration steps. Moreover, the computational efficiency of this procedure (curve 53) is worth than the computational efficiency of the procedure according to the first and the second aspects for four coarse energy groups with use of double precision (curve 55), because the gradient of the curve 55 is greater than the gradient of curve 53.

The procedure according to the first and the second aspects for four coarse energy groups with use of double precision provides an error substantially equal to 10⁻⁷ for 40 pursued NEM iteration steps.

Thus, the double precision has a great effect on the value of the fast flux error, but has no impact on the computational efficiency of the modelizing method.

The seventh aspect of the present invention has also a greater effect on the value of the fast flux error, than on the computational efficiency.

The first and the second aspects for four coarse energy groups provides the best computational efficiency, and FIG. 7 illustrates that the greatest gradient for an error value comprised between 10⁰ and 10⁻⁵ is obtained for the curves 54 to 57, which all correspond to the first and the second aspects.

As set forth in the previous description, the first to eighth aspects of the invention help to achieve robust modelizing methods providing a better computational efficiency so that relevant core simulations can be obtained within short computational time period.

It should be kept in mind that the first aspect in itself helps in achieving this goal and can thus be used separately from the second to eighth aspects. Also, the second, third, seventh and eighth aspects are not necessarily implemented with the first aspect or with any one of the fourth to sixth aspects. 

1-9. (canceled)
 10. A computer implemented method for modelizing a nuclear reactor core, comprising the steps of: partitioning the core in cubes to constitute nodes of a grid for computer implemented calculation, calculating neutron flux by using an iterative solving procedure of at least one eigensystem, components of an iterant of the eigensystem corresponding either to a neutron flux, to a neutron outcurrent or to a neutron incurrent, for a respective cube to be calculated, wherein neutrons are sorted in a plurality of neutron energy groups, and wherein the iterative solving procedure includes a substep of conditioning the eigensystem into a restricted eigensystem corresponding to the eigensystem for a selection of some of the plurality of neutron energy groups.
 11. The method of claim 10 wherein a number of the plurality of neutron energy groups is equal to
 8. 12. The method of claim 10 wherein a number of the selected neutron energy groups is between 1 and
 4. 13. The method of any one of claim 10 wherein an iteration of the restricted eigensystem solving procedure is: $\underset{\underset{\;^{``}{outflow}^{''}}{}}{A_{Gmus}^{({out})}d_{Gmus}^{({out})}} = {\mu\begin{bmatrix} {\underset{\underset{{\,^{``}{isotropic}}\mspace{14mu} {production}^{''}}{}}{\sum\limits_{G^{\prime} = 1}^{NGC}\; {\sum\limits_{u^{\prime} = 1}^{3}\; {\sum\limits_{{s^{\prime} = 1},r}\; {Q_{m\; G}^{G^{\prime}u^{\prime}s^{\prime}}d_{G^{\prime}{\eta {({{mu}^{\prime}s^{\prime}})}}u^{\prime}s^{\prime}}^{({out})}}}}} +} \\ \underset{\underset{{}_{}^{}{}_{}^{}}{}}{\sum\limits_{{s^{\prime} = 1},r}{C_{Gmus}^{s^{\prime}}d_{{Gmus}^{\prime}}^{({out})}}} \end{bmatrix}}$ wherein d^((out)) designates the components of the iterant corresponding to an individual cube m; u, u′ are Cartesian axis indexes; s, s′ are orientations equal to 1 or r and corresponding respectively to a left or a right surface of the individual cube along the respective Cartesian axes u, u′; G, G′ being neutron energy groups, A and C being mono-energetic factors, and Q designating a spectral factor, NGC being a number of neutron energy groups in the selection of neutron energy groups, and μ is a neutron eigenvalue, in which an isotropic term $\sum\limits_{G^{\prime} = 1}^{NGC}\; {\sum\limits_{u^{\prime} = 1}^{3}\; {\sum\limits_{{s^{\prime} = 1},r}\; {Q_{m\; G}^{G^{\prime}u^{\prime}s^{\prime}}d_{G^{\prime}{\eta {({{mu}^{\prime}s^{\prime}})}}u^{\prime}s^{\prime}}^{({out})}}}}$ is independent of an outgoing current direction specified by the Cartesian axis u and orientation s, and a throughflow term $\sum\limits_{{s^{\prime} = 1},r}\; {C_{mGus}^{s^{\prime}}d_{{Gmus}^{\prime}}^{({out})}}$ being defined within the same neutron energy group G along the same Cartesian axis u.
 14. The method of claim 10 wherein the iterative solving procedure includes a multi-level V-cycle, the multi-level V-cycle including a top level, a first intermediate level and at least a bottom level, wherein the top level includes the iteration of the eigensystem for the plurality of neutron energy groups and the conditioning of the eigensystem into a restricted eigensystem for the selection of neutron energy groups, wherein the first intermediate level includes the conditioning of the restricted eigensystem into a spare eigensystem wherein components of an iterant of the spare eigensystem only correspond either to neutron incurrents coming into the cubes or to neutron outcurrents coming from the cubes, and wherein the bottom level includes solving of a first spare eigensystem for a single energy group.
 15. The method of claim 14 wherein the multi-level V-cycle also includes at least a second intermediate level, wherein each second intermediate level includes, in a downward orientation of the multi-level V-cycle, a conditioning of a former spare eigensystem for a former selection of neutron energy groups into a latter spare eigensystem for a latter selection of neutron energy groups, the number of neutron energy groups in the latter selection being smaller than the number of neutron energy groups in the former selection, wherein the former spare eigensystem of the second intermediate level subsequent to the first intermediate level in the downward orientation of the multi-level V-cycle is the spare eigensystem resulting from the first intermediate level, and wherein the former spare eigensystem of each second intermediate level which is not subsequent to the first intermediate level is the latter spare eigensystem resulting from a precedent second intermediate level.
 16. The method of claim 10 further comprising a step of building a nuclear reactor core on the basis of the calculated neutron flux.
 17. The method of claim 10 further comprising operating a nuclear reactor core on the basis of the calculated neutron flux.
 18. A computer program product residing on a computer readable medium and comprising a computer program for running on a computer the method according to claim
 10. 